package com.edu.app.service.sys.ai;

import com.edu.app.bean.core.SysCustomer;
import com.edu.app.bean.virtualbean.KeyValueItems;
import com.edu.app.bean.virtualbean.NameValueItems;
import com.edu.app.bean.virtualbean.UserActByDate;

import com.github.pagehelper.PageInfo;

import java.util.List;

public interface SysAIService{
    List<SysCustomer> getNotActiveCustomer(String username, Integer range);
    Integer getTeacherPendingConfirmNum(String username);
    Integer getTeacherPendingFeedbackNumber(String username);
    NameValueItems getTeacherLessonCompleteRank(String username);
    List<UserActByDate> getUserActListByDateWithRole(String date, String role);
    List<UserActByDate> getUserActListByDateWithRoleAndUser(String date, String role, String username, String actType);
    List<NameValueItems> getTeacherCompleteLessonNumber(Integer number, Integer type, String date);
    List<NameValueItems> getTeacherDemoLessonNumber(Integer number, Integer type, String date);
    PageInfo getPoStudentStatus(Integer currentPage, Integer pageSize, Integer type);
    PageInfo getPoStudentStatusMine(Integer currentPage, Integer pageSize, String nickname);
    List<KeyValueItems> getMarketingStatus(String dateYYMM);
    List<KeyValueItems> getDemoClassStatus(String dateYYMM);
    List<KeyValueItems> getClassCompleteStatus(String dateYYMM);
    List<KeyValueItems> getMemberAgeRange();
    PageInfo getPoCustomerStatus(Integer currentPage, Integer pageSize, Integer type);
    Integer getPoCustomerStatusCompleteDemoClassAllNumber();
    Integer getPoCustomerStatusPendingDemoClassAllNumber();
    PageInfo getPoCustomerByUser(Integer currentPage, Integer pageSize, String username, Integer stage);

    /*new APIs for both sales and teachers*/
    List<NameValueItems> getUserActivityTotalNumber(Integer status, String type, String date);
    List<NameValueItems> getUserActivityNumber(Integer status, String type, String date);
}